home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d7 / gets15.arc / DISKETTE.IMG / lha / USER.DOC < prev    next >
Text File  |  1991-05-29  |  74KB  |  2,363 lines

  1.  
  2.  
  3.     #####    ########  #########    ######
  4.    #     #   #             #       #      #        Graphically Enhanced
  5.   #       #  #             #      #                  Terminal Software
  6.   #          #             #       #
  7.   #          ######        #        ######              Version 1.5
  8.   #   #####  #             #              #
  9.   #       #  #             #               #
  10.    #     #   #             #      #       #
  11.     #####    ########      #       #######          1991 Snafu Software
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.                      Send all Questions or Comments to:
  21.  
  22.  
  23.  
  24.  
  25.  
  26.          ( -- By U.S. Mail -- )                 ( -- By Modem -- )
  27.  
  28.            Scott C. Duensing                  The Snafu Software BBS
  29.            312 Las Olas Drive                   300 to 38,400 Baud 
  30.           Belleville, Illinois             24 Hours a Day, 7 Days a Week
  31.               Zip:  62221                         (618) 234-2631
  32.  
  33.  
  34.  
  35.     ( -- Via the WWIVNet Network -- )      ( -- GETS Support Board -- )
  36.  
  37.           E-mail ID#: 1 @6852                SubType 26852, Host 6852
  38.  
  39.  
  40.  
  41.  
  42.  
  43.                              Second Revision
  44.  
  45.  
  46.  
  47.  
  48.  
  49.                    GETS Copyright 1991 Scott C. Duensing
  50.  
  51.                            All Rights Reserved.
  52.  
  53.  
  54.  
  55.  
  56.                            1991 Snafu Software.
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.            The Author Would Like to Thank the Following People:
  64.            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  65.  
  66.  
  67.  
  68.  
  69.  
  70.            Ted Kocot for his never ending "Why don't you add..."
  71.  
  72.  
  73.       Terri Irvin for her "Finish that thing before it kills us both!"
  74.  
  75.  
  76.     Jack Erdmann for help with creating the registered version packaging.
  77.  
  78.  
  79.        The countless BETA testers who helped smash the numerous bugs.
  80.  
  81.  
  82.    Queensryche for their "Operation: Mindcrime" to help keep boredom away.
  83.  
  84.  
  85. Everyone who encouraged me during the times it seemed I would never finish.
  86.  
  87.  
  88.  
  89.  
  90. COPYRIGHT NOTICE
  91. ~~~~~~~~~~~~~~~~
  92.  
  93. THIS PRODUCT IS SHAREWARE, IT IS NOT FREE!  PLEASE SUPPORT SHAREWARE BY
  94. SENDING THE REQUESTED $25.00 REGISTRATION FEE TO SCOTT C. DUENSING.  BY
  95. SUPPORTING SHAREWARE YOU HELP KEEP SOFTWARE PRICES LOW.  IF YOU FIND THIS
  96. SOFTWARE USEFUL YOU ARE REQUIRED TO PAY FOR IT, OTHERWISE, PASS IT ALONG!
  97.  
  98. GETS IS DISTRIBUTED "AS IS".  THERE IS NO WARRANTY OF ANY KIND, EITHER
  99. EXPRESSED OR IMPLIED.  NEITHER SCOTT C. DUENSING NOR SNAFU SOFTWARE ASSUME
  100. ANY RESPONSIBILITY FOR ANY DAMAGES INCURRED WHILE USING THIS SOFTWARE.  THE
  101. USER OF THIS SOFTWARE WILL ASSUME ALL RESPONSIBILITY FOR ANY AND ALL
  102. DAMAGES RESULTING FROM THE USE AND/OR MISUSE OF THIS SOFTWARE.
  103.  
  104. YOU MAY DISTRIBUTE GETS FREELY TO BBS SYSTEMS, USER GROUPS, DISK
  105. DISTRIBUTORS, PRIVATE USERS, OR ANY ORGANIZATION THAT MAY WISH IT.  GETS
  106. MAY BE DISTRIBUTED IN AN UNMODIFIED AND COMPLETE FORM ONLY.  IT IS ILLEGAL
  107. TO DECOMPILE, DISSASSEMBLE, OR OTHERWISE REVERSE ENGINEER THIS SOFTWARE.
  108. IT IS ILLEGAL TO DISTRIBUTE MODIFIED OR INCOMPLETE COPIES OF THIS SOFTWARE.
  109. YOU MAY NOT DISTRIBUTE GETS, OR ANY PART OF GETS, AS PART OF ANOTHER
  110. PROGRAM OR PRODUCT WITHOUT PRIOR WRITTEN CONSENT OF SCOTT C. DUENSING.
  111.  
  112.  
  113.  
  114. LICENSE NOTICE & SUPPORTED PRODUCTS
  115. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  116.  
  117.  
  118. THE DRIVER USED WITHIN THIS PROGRAM ("DIGITAL1.EXE") IS LICENSED WITH
  119. PERMISSION FROM COVOX, INC.  "DIGITAL1.EXE" WAS ORIGINALLY NAMED "SAY.EXE"
  120. BUT WAS RENAMED FOR CONSISTENCY WITH THE EXISTING GETS FILES.  COVOX SOUND
  121. AND REGONITION SYSTEMS MAY BE OBTAINED FROM:
  122.  
  123. COVOX, INC.
  124. 675-D CONGER STREET
  125. EUGENE, OR  97402
  126.  
  127.  
  128.  
  129. GETS ALSO FULLY SUPPORTS THE SOUND BLASTER.  YOU MAY OBTAIN ONE FROM:
  130.  
  131. CREATIVE LABS, INC.
  132. 131 SOUTH MAPLE AVENUE #6
  133. SOUTH SAN FRANCISCO, CA  94080
  134.  
  135.  
  136.  
  137. WITH AN ADLIB MUSIC SYNTHESIZER CARD, GETS WILL PLAY ENHANCED FM MUSIC.
  138. THE ALMSC IS AVAILABLE FROM:
  139.  
  140. ADLIB, INC.
  141. 50 STANIFORD STREET
  142. SUITE 800
  143. BOSTON, MA  02114
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152. GETS System Requirements:
  153. ~~~~~~~~~~~~~~~~~~~~~~~~~
  154.  
  155.  
  156.      *   MS-DOS Compatible Computer System (XT, AT, 386, 486, or faster)
  157.  
  158.      *   Graphics Card
  159.  
  160.      *   Modem on COM1 or COM2
  161.  
  162.      *   512k RAM
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173. Highly Recommended:
  174. ~~~~~~~~~~~~~~~~~~~
  175.  
  176.  
  177.      *   Color Monitor and Graphics Card
  178.  
  179.      *   Hard Drive
  180.  
  181.      *   640k
  182.  
  183.      *   Creative Lab's "Sound Blaster" or Covox's "Sound Master II"
  184.          (AdLib and other Covox devices also supported)
  185.  
  186.      *   80286 or faster processor
  187.  
  188.  
  189.  
  190. Welcome to GETS, Snafu Software's Graphically Enhanced Terminal Software.
  191. With GETS, a BBS program can control almost any function of the remote
  192. computer system - Graphics, Sound, Text, Diskettes, almost anything!
  193. Current BBS games & programs can be easily converted to GETS enhanced
  194. software, and new software written for GETS will allow never before
  195. imagined capabilities to be included into online games and utilities.
  196. Imagine games with digitized sound and high resolution graphics - tutorials
  197. that can show accurate examples over a modem - anything "local" software
  198. can accomplish, GETS can perform while online.
  199.  
  200. GETS runs from within your existing terminal program, there is no need to
  201. learn new software.  If your software won't accept an external program,
  202. GETS can be used as a stand-alone terminal.
  203.  
  204. GETS is an open-ended program; if there is a command that a programmer
  205. needs to complete a program, it can be added without any modifications to
  206. the GETS software itself.  "External Commands" can be written in any
  207. language (even in DOS batch files).
  208.  
  209. Even with the great power the BBS program author now has, the user is
  210. protected from a BBS destroying their disk drive or any other portion of
  211. their system.
  212.  
  213. This manual will cover the installation of GETS into existing terminal
  214. software, use of GETS in Terminal mode and in GETS mode, and several of the
  215. GETScript programming concepts including a full list of GETScript commands.
  216.  
  217.  
  218.  
  219. For more information on anything not covered in this manual, we recommend
  220. that you request your SysOp to subscribe to the following WWIVNet sub:
  221.  
  222.  
  223.             GETS Support Network        SubType 26852, Host 6852
  224.  
  225.  
  226.  
  227.  
  228. INSTALLING GETS
  229. ~~~~~~~~~~~~~~~
  230.  
  231.  
  232.      This manual assumes that you have a working knowledge of both DOS and
  233. your current terminal software and how to configure and use it.  GETS has
  234. been successfully installed and run with Procomm 2.4.2, Procomm Plus 1.0,
  235. Telix, and QModem.
  236.  
  237.      GETS requires 600k free on the drive it is being installed to.  While
  238. GETS itself dose not occupy 600k, the extra space is needed for temporary
  239. files used while unpacking the GETS programs from the distribution disk or
  240. archive.  If you are using a floppy only system (no hard drive) and do not
  241. have a 3.5" disk drive or a high-density disk drive, you will need to use
  242. another computer to install and unpack the files - ask a friend or your
  243. local dealer for assistance.
  244.  
  245.      If you received GETS on diskette, simply type INSTALL from the GETS
  246. diskette to begin the install process.  GETS will check your system and
  247. unpack and copy itself to the directory of your existing terminal software.
  248. Follow the on screen instructions to install and configure GETS.  Keep in
  249. mind while installing that the defaults offered by INSTALL and SETUP are
  250. not necessarily available in your system.  They are provided as general
  251. suggestions and will probably need to be changed to fit your system.
  252.  
  253.      If you received GETS in an archive you will need to unpack the archive
  254. to a floppy diskette before installing GETS.  Once unpacked, simply type
  255. INSTALL from the GETS diskette to begin the install process.  GETS will
  256. check your system and unpack and copy itself to the directory of your
  257. existing terminal software.  Follow the on screen instructions to install
  258. and configure GETS.  Keep in mind while installing that the defaults
  259. offered by INSTALL and SETUP are not necessarily available in your system.
  260. They are provided as general suggestions and will probably need to be
  261. changed to fit your system.
  262.  
  263.      For more information on configuring GETS to work with your system,
  264. see the appendix on configuration.
  265.  
  266.      Once GETS has been installed and configured, it needs to be added to
  267. your terminal program.  Almost all terminal programs offer support for
  268. external protocols, and most support either "hot keys" or external editors
  269. and/or file viewers.  GETS should be installed as a file viewer or editor
  270. whenever possible and a protocol only as a last resort.  If your software
  271. does not support any of the above, you can use a "DOS Shell" to access
  272. GETS.  Programs such as QModem and Procomm have the ability to exit to DOS
  273. and return to where they left off when you type EXIT from DOS.  By using
  274. a "shell" of this type, you can run GETS from DOS and then EXIT back to
  275. your normal terminal when finished.
  276.  
  277.  
  278.  
  279. INSTALLING GETS  (Cont.)
  280. ~~~~~~~~~~~~~~~~~~~~~~~~
  281.  
  282.  
  283.      The command line options for GETS are as follows:
  284.  
  285.             GETS [baudrate] [databits] [parity] [stopbits]
  286.  
  287.  
  288.      Legal values for the parameters are as follows:
  289.  
  290.             [baudrate]:  75, 110, 300, 1200, 1800, 2400, 
  291.                          9600, or 19200.
  292.  
  293.             [databits]:  5, 6, 7, or 8.
  294.  
  295.               [parity]:  N, E, O, S, or M.
  296.                          (None, Even, Odd, Space, or Mark.)
  297.  
  298.             [stopbits]:  1, 1.5, or 2.
  299.  
  300.  
  301.      For example, to load GETS with a 2400 baud modem, use the following:
  302.  
  303.             GETS 2400 8 N 1
  304.  
  305.  
  306.      To integrate GETS into your existing terminal software, add a line
  307. similar to the one above into your terminal programs external editor or
  308. external protocol section.  Now to call GETS, invoke the command that
  309. calls the editor or protocol and you're in GETS!
  310.  
  311.      Many terminal programs have the ability to pass communications
  312. parameters to external programs.  If your software has this ability, you
  313. can have your software insert the correct baud rate into the GETS command
  314. line - helpful for people who use more than one modem speed.
  315.  
  316.  
  317. FLOPPY USERS - GETS may not be able to handle the slow speed of a floppy
  318. ~~~~~~~~~~~~   diskette reliably for some modems.  If this happens and the
  319.                modem buffer and I/O buffers do not seem to help, create a
  320.                15k-25k RAM disk using the DOS VDISK.SYS or RAMDRIVE.SYS
  321.                programs.  Use the RAM disk for GETS's temporary files.
  322.  
  323.  
  324. Any time you wish to change the current GETS setup parameters, simply type
  325. SETUP from your terminal program directory.
  326.  
  327.  
  328.  
  329. USING GETS
  330. ~~~~~~~~~~
  331.  
  332.  
  333.      Once in GETS, you have only a handful of commands to remember.  Below
  334. is a listing of GETS commands:
  335.  
  336.           [F1] - Help!  [F1] will display a help menu that lists the
  337.                  commands available to you while in GETS and several
  338.                  addresses where you can contact us at Snafu Software.
  339.  
  340.     [Up Arrow] - Scrollback.  Pressing the up arrow key will enter
  341.                  scrollback mode where you can view text that has scrolled
  342.                  off the screen.  The dashed red line shows where the end
  343.                  and the beginning of the scrollback buffer meet.  Unlike
  344.                  most programs that support scrollback, GETS allows you to
  345.                  scroll from the bottom of the buffer to the top by going
  346.                  "off the end" of the buffer.  Picture GETS's scrollback
  347.                  as a loop of paper that has the ends connected rather
  348.                  than as a piece of paper that has a top and a bottom.
  349.  
  350.      [ALT]-[C] - Configure.  [ALT]-[C] will show the configuration screen.
  351.                  All options currently in use are displayed on this screen.
  352.  
  353.      [ALT]-[Q] - Reset Terminal.  [ALT]-[Q] will reset the GETS terminal to
  354.                  standard ANSI Terminal mode.  [ALT]-[Q] will abort any
  355.                  GETScript program that may be running and will also
  356.                  clear the screen.
  357.  
  358.      [ALT]-[X] - Exit GETS.  [ALT]-[X] exits from GETS to the calling
  359.                  program or to DOS.
  360.  
  361.  
  362.      GETS will automatically sense incoming GETScript programs and act
  363. accordingly (either by caching the file or switching to GETSLaunch mode).
  364.  
  365.  
  366.  
  367. PROGRAMMING IN GETSCRIPT
  368. ~~~~~~~~~~~~~~~~~~~~~~~~
  369.  
  370. GETScript, the enhanced control language of GETS, can be used by anyone -
  371. you do not need to be an expert programmer to harness the power of GETS!
  372. While GETScript is not as easy to read as some programming languages, it is
  373. short and sweet which means fast transmission times over a modem.  For
  374. those of you that are programmers, we worked hard to keep GETScript as
  375. compatible to BASIC as we could - color values, screen coordinates, even
  376. the play music and draw commands use the same syntax.  For you newcomers
  377. to programming, this guide will explain the basics of programming in
  378. GETScript.
  379.  
  380.  
  381.  
  382. TWO LANGUAGES?
  383. ~~~~~~~~~~~~~~
  384.  
  385. Well, no, not really.  Due to the length of time some GETS commands wait
  386. for input, some sort of command pacing was needed to keep commands from
  387. literally running into each other as they were being sent by the BBS to
  388. GETS.  This problem resulted in two separate GETS control methods.  One is
  389. called GETSLaunch, and the other GETSFly.  GETSLaunch is the most powerful
  390. of the two, but requires the use of a true programming language to access
  391. it.  While GETSFly was designed to be as easy to us as ANSI graphics
  392. are today, GETSLaunch was not.  Programmers wishing to harness the full
  393. power of GETS will want to use GETSLaunch while beginning programmers will
  394. want to use GETSFly.  Both use the same commands, the same syntax, and the
  395. same software (GETS), but GETSLaunch acts more like a file transfer
  396. protocol than a scripting language.  When a GETSFly file is transmitted
  397. from the BBS, GETS captures it to disk and then replays it when there is
  398. time.  With GETSLaunch, you can send interactive commands across the modem
  399. and GETS will execute them as soon as they are received allowing for true
  400. arcade style games and online tutorials.  GETSLaunch requires that several
  401. pacing rules be followed and that a special set of pacing characters be
  402. used.  The details of GETSLaunch programming are beyond the scope of this
  403. manual; any programmer wishing to use GETSLaunch should contact Snafu
  404. Software - a separate GETSLaunch programming guide is available.
  405.  
  406.  
  407.  
  408. THE BASICS OF GETSCRIPT
  409. ~~~~~~~~~~~~~~~~~~~~~~~
  410.  
  411.  
  412. GETScript commands are currently divided up into three "modes" in two
  413. categories.  The two main categories are INTERNAL and EXTERNAL commands.
  414. Internal commands are built into GETS while external commands need to
  415. access DOS (load an external program) to be used.  Keep in mind that
  416. external commands are not supported by unregistered versions of GETS.
  417. The three modes are TEXT, GRAPHICS, and DUAL.  Commands listed as TEXT will
  418. not work in GRAPHICS, and GRAPHICS commands will not work in TEXT modes.
  419. A command that is DUAL MODE will work in either TEXT or GRAPHICS modes.
  420.  
  421. GETScript is not as complex as a language like Pascal or C.  The main
  422. requirement is that a maximum of one GETScript command be placed on each
  423. line.  Lines are separated by a carriage return placed at the end of each
  424. line (a carriage return is created by pressing the [ENTER] key).  Any text
  425. editor or word processor that is capable of creating straight ASCII files
  426. may be used to create GETScript programs.
  427.  
  428. While entering GETScript commands, keep in mind that most BBS systems will
  429. limit a line of text to 80 characters in length.  While this is not a
  430. problem with normal messages, it will cause problems with GETScript.  GETS
  431. determines the end of a command by the presence of a carriage return at the
  432. end of the line.  If the BBS "word wraps" the script, carriage returns will
  433. be placed into the GETScript in places they should not be.  This will cause
  434. GETS in incorrectly determine the end of the command that was wrapped, and
  435. strange things will occur.  To fix this problem, GETS offers a way to
  436. continue a command over multiple lines.  If your command is going to run
  437. over the line length of the BBS you are using, add an underscore ("_") to
  438. the end of the line and continue on the next.  For example,
  439.  
  440.                        PRThis command is too long so _
  441.                        we will use two lines.
  442.  
  443. would produce on the screen:
  444.  
  445.              This command is too long so we will use two lines.
  446.  
  447. A safe maximum line length to use is 65 characters.  When breaking a line
  448. into multiple parts, be sure that the line(s) following the underscore do
  449. not start with a space.  In the above example, if we use the following,
  450.  
  451.                        PRThis command is too long so_
  452.                         we will use two lines.
  453.  
  454. it would produce on the screen:
  455.  
  456.              This command is too long sowe will use two lines.
  457.  
  458. Note how the words "sowe" are run together.  GETS will "trim" the ends of
  459. any command line it parses.  For example, the line "   OD Testing!   " will
  460. be processed by GETS as "OD Testing!".  For this reason, place all spaces
  461. before the underscore, not on the beginning of the following line.
  462.  
  463.  
  464.  
  465.  
  466. THE BASICS OF GETSCRIPT (cont.)
  467. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  468.  
  469.  
  470. GETScript commands are made up of a two letter (or symbol) command that is
  471. usually followed by a series of parameters, or arguments.  GETScript
  472. commands can be entered in either upper or lower case, and can be spaced
  473. in any way that makes sense.  Parameters are separated by a vertical bar
  474. known as a "pipe" symbol ("|").  The following GETScript example displays
  475. "Welcome to GETS!" inside a shadowed box in EGA (this example is included
  476. on disk with the GETS program).
  477.  
  478.  
  479.  
  480.  
  481. ## This is a sample GETScript file that will display WELCOME TO GETS!
  482. ## in a shadowed box on an EGA display.
  483.  
  484. ## First, turn on High-Resolution EGA...
  485. sm9
  486.  
  487. ## Draw a blue box to turn the screen blue...
  488. co1|0
  489. fb0|0|639|349
  490.  
  491. ## Draw the shadow for the box in dark grey...
  492. co8|0
  493. fb239|126|403|159
  494.  
  495. ## Now draw a box in light grey to contain the text...
  496. co7|0
  497. fb229|116|393|149
  498.  
  499. ## Move the cursor to 32,10 and display message in red on white...
  500. xy32|10
  501. co4|7
  502. prWelcome to GETS!
  503.  
  504. ## Draw a border for the screen in white...
  505. co15|7
  506. hb0|0|639|349
  507.  
  508. ## Wait for the user to press any key...
  509. wk~
  510.  
  511. ## Return system to normal and shutdown GETS...
  512. ud
  513. eg
  514.  
  515.  
  516.  
  517. THE BASICS OF GETSCRIPT (cont.)
  518. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  519.  
  520.  
  521. To test a script from DOS, start GETS with an additional command line
  522. parameter, the filename of the script.  For example, to test a file named
  523. EXAMPLE.GET, enter the following:
  524.  
  525.           GETS 2400 8 N 1 EXAMPLE.GET
  526.  
  527. To use a script on a BBS system, you must begin the script file with a 
  528. "launch string" that tells GETS when to use incoming information as GETS
  529. commands.  The current launching string is:
  530.  
  531.           GETSFly1.0B
  532.  
  533. Be sure to use the string exactly as shown above or GETS will not recognize
  534. it.  Also be sure to follow the launch string by at lease one blank line to
  535. give GETS a second to switch over into GETS mode (screen initialization
  536. takes some time depending on which video card you use).
  537.  
  538. While running GETScript files from DOS, GETS will "trace" the file for
  539. errors.  Any errors that are found will cause GETS to beep.  The line that
  540. contained the error will be written to a text file called ERRORS, along
  541. with the number of the line.  A sample ERRORS file looks like this:
  542.  
  543.  
  544.           --- Syntax Error in Line #10 ---
  545.           # Draw the shadow for the box in dark grey...
  546.  
  547.           --- Syntax Error in Line #22 ---
  548.           bh0|0|639|349
  549.  
  550.  
  551. Notice the missing "#" in line 10 and the transposed "hb" in line 22.  If
  552. you are debugging a GETS program that calls other GETScript files (such as
  553. clip art files) using the RF (READ FROM) command, remember that the line
  554. numbers refer to when the command was processed, not where it exists in the
  555. GETScript file.  For example, if a GETScript runs for 3 lines, then calls
  556. a 5 line clip art file, runs for 2 more lines, and then crashes, the error
  557. will be in line 12 because it was the 12th line processed, not in line 7
  558. of the file it exists in.  The ERRORS file will be deleted the next time
  559. you run GETS (or replaced with a new listing of errors).
  560.  
  561. GETS also supports a "debug" mode.  See the command DB (DEBUG) for more
  562. information on debugging a script while running.
  563.  
  564.  
  565.  
  566. The rest of this manual, with the exceptions of some of the appendix
  567. sections, contains a listing of GETS commands and information about them.
  568.  
  569.  
  570.  
  571.  
  572. GETSPREP
  573. ~~~~~~~~
  574.  
  575.  
  576. Included with GETS since release 1.5 is a utility called GETSPrep.  After
  577. creating a GETScript file, it is a good idea to run GETSPrep on it to
  578. prepare it for use with a BBS.  GETSPrep will add a hidden GETS launch
  579. string to the beginning of the file that will not be seen by the user when
  580. it is transmitted to GETS.  It will also compress the file by removing
  581. comments, blank lines, and unneeded spaces in GETScript commands.  After
  582. compressing the file, GETSPrep will truncate it to 65 characters for
  583. uploading to a BBS.  To run GETSPrep on a GETScript file, enter the
  584. following at a DOS prompt:
  585.  
  586.          GETSPREP [filename]
  587.  
  588. Where [filename] is the name of the file to compress.
  589.  
  590. By using GETSPrep, a programmer may format a GETScript file any way they
  591. wish and easily convert it to a compact version for use on a BBS.
  592.  
  593.  
  594.  
  595.  
  596. CLIP ART
  597. ~~~~~~~~
  598.  
  599.  
  600. Clip Art files for GETS are simply GETScript files that contain nothing
  601. but drawing commands.  Clip Art files may not contain ANY screen
  602. statements, debug commands, or exit GETS commands.  By using clip art
  603. files, a programmer may use the same object several times by using the RF
  604. command.
  605.  
  606.  
  607.  
  608.  
  609. FILENAMES
  610. ~~~~~~~~~
  611.  
  612.  
  613. When programming in GETScript, we recommend that the following filename
  614. conventions be used to help avoid confusion:
  615.  
  616.          *.GET - A GETScript file that has been run through GETSPrep.
  617.  
  618.          *.GSC - A raw GETScript file (GETS Source Code).
  619.  
  620.          *.GCA - A GETS Clip Art file.
  621.  
  622.          *.VOC - Digital Sound Files (Creative Lab's Format).
  623.  
  624.          *.MDI - FM Sound File (AdLib MIDI Format).
  625.  
  626.  
  627.  
  628.  
  629. ## COMMENTS  (##)
  630. ~~~~~~~~~~~~~~~~~
  631.  
  632.       Group:  DUAL MODE, INTERNAL
  633.  
  634.         Use:  To place remarks within a GETScript file.
  635.  
  636.      Syntax:  ##[text]
  637.  
  638.     Example:  ## This is a comment!
  639.  
  640.  Parameters:  [text] Any string of characters.
  641.  
  642.  
  643. Use comments to place notes in a GETScript file.  Comments greatly increase
  644. readability of GETScript code and can be used to "comment out" sections of
  645. a GETScript while debugging.
  646.  
  647.  
  648.  
  649.  
  650. Arc Circle  (AC)
  651. ~~~~~~~~~~~~~~~~
  652.  
  653.       Group:  GRAPHICS MODE, INTERNAL
  654.  
  655.         Use:  Draw a circular arc.
  656.  
  657.      Syntax:  AC<x>|<y>|<r>|<s>|<e>
  658.  
  659.     Example:  AC100|100|30|10|50
  660.  
  661.  Parameters:  <x> X coordinate for the center of the arc.
  662.               <y> Y coordinate for the center of the arc.
  663.               <r> Radius from center to top of the circle forming the arc.
  664.               <s> Starting angle.  See below.
  665.               <e> Ending angle.  See below.
  666.  
  667.  
  668. AC draws a circular arc from angle <s> to angle <e>.  Angles are as
  669. follows:
  670.  
  671.                                 090
  672.  
  673.                                  |
  674.                                  |
  675.                            180 --+-- 000
  676.                                  |
  677.                                  |
  678.  
  679.                                 270
  680.  
  681. If <s> or <e> are negative, lines will be drawn connecting the negative
  682. angle to the center of the arc.  By making both angles negative, a pie
  683. slice can be drawn.
  684.  
  685.  
  686.  
  687.  
  688. ARC ELLIPTICAL  (AE)
  689. ~~~~~~~~~~~~~~~~~~~~
  690.  
  691.       Group:  GRAPHICS MODE, INTERNAL
  692.  
  693.         Use:  Draw an elliptical arc.
  694.  
  695.      Syntax:  AE<x>|<y>|<r>|<s>|<e>|<a>
  696.  
  697.     Example:  AE100|100|30|10|50|1.5
  698.  
  699.  Parameters:  <x> X coordinate for the center of the arc.
  700.               <y> Y coordinate for the center of the arc.
  701.               <r> Radius.  See below.
  702.               <s> Starting angle.  See below.
  703.               <e> Ending angle.  See below.
  704.               <a> Aspect ratio.  See below.
  705.  
  706.  
  707. AE draws an elliptical arc from angle <s> to angle <e>.  Angles are as
  708. follows:
  709.  
  710.                                 090
  711.  
  712.                                  |
  713.                                  |
  714.                            180 --+-- 000
  715.                                  |
  716.                                  |
  717.  
  718.                                 270
  719.  
  720. If <s> or <e> are negative, lines will be drawn connecting the negative
  721. angle to the center of the arc.  By making both angles negative, a pie
  722. slice can be drawn.
  723.  
  724. Aspect determines the shape of the arc.  The aspect is expressed as a
  725. ratio of the Y axis to the X axis.  If the value for <a> is less than
  726. one, the radius refers to the X axis.  If <a> is greater than one, the
  727. radius refers to the Y axis.
  728.  
  729.  
  730.  
  731.  
  732. BAR PRINT  (BP)
  733. ~~~~~~~~~~~~~~~
  734.  
  735.       Group:  DUAL MODE, INTERNAL
  736.  
  737.         Use:  Display a message centered in a colored bar.
  738.  
  739.      Syntax:  BP[message]
  740.  
  741.     Example:  BPThis is neat!
  742.  
  743.  Parameters:  [message] Is any string to be printed.
  744.  
  745.  
  746. BP displays a message centered on the screen in the current colors.  The
  747. text will be printed in the current foreground color while the background
  748. of the letters is in the current background color.
  749.  
  750.  
  751.  
  752.  
  753.  
  754. CALL DOS  (CD)
  755. ~~~~~~~~~~~~~~
  756.  
  757.       Group:  DUAL MODE, EXTERNAL
  758.  
  759.         Use:  Call an external DOS command or program.
  760.  
  761.      Syntax:  CD[command]
  762.  
  763.     Example:  CDdir c:\gets\*.get /w
  764.  
  765.  Parameters:  [command] Any legal DOS command or program name.
  766.  
  767.  
  768. CD is used to call external DOS commands and programs into a GETScript
  769. program.  CD is an external command and is not available in unregistered
  770. versions of GETS.  CD is the gateway to GETS's infinite expandability.  If
  771. a command that is needed is not available within the GETS internal command
  772. set, a programmer may add it by building a program, or external command
  773. library, that does the job.  For example, a library may be named EXTRAS
  774. and could contain a command called LV that would load a VGA picture and
  775. display it to the monitor.  LV needs a filename such as PHOTO.GIF to load
  776. so the external command line would be:  CDextras LVphoto.gif.  The program
  777. EXTRAS needs to then parse the command line ("LVphoto.gif") and act upon
  778. it by loading the picture.  With this gateway, an external command may
  779. be added without the need to recompile or reprogram GETS.  Due to the great
  780. power the programmer now has, many people fear that a "CDformat c:" could
  781. be sent through GETS and the user would never know it until it was too
  782. late.  By setting the DOS MODE in SETUP to NERVOUS instead of NORMAL, GETS
  783. will request permission before executing any commands that need DOS
  784. (including PLAY ADLIB and PLAY DIGITAL).  When a DOS command is requested
  785. in NERVOUS mode, a dialog will appear and ask whether or not the command
  786. requested is allowed to proceed--if so, it runs, otherwise it is skipped.
  787.  
  788.  
  789.  
  790.  
  791. CARRIAGE RETURN  (CR)
  792. ~~~~~~~~~~~~~~~~~~~~~
  793.  
  794.       Group:  DUAL MODE, INTERNAL
  795.  
  796.         Use:  Insert a carriage return into a displayed line.
  797.  
  798.      Syntax:  CR
  799.  
  800.     Example:  CR
  801.  
  802.  Parameters:  * NONE *
  803.  
  804.  
  805. CR inserts a carriage return into a displayed line of text.  The text
  806. cursor is moved to the next line and back to column 1 (leftmost position).
  807. If the cursor moves below the bottom of the screen, the screen will scroll
  808. to allow for more room at the bottom.
  809.  
  810.  
  811.  
  812.  
  813. CLEAR CLIPBOARD  (CC)
  814. ~~~~~~~~~~~~~~~~~~~~~
  815.  
  816.       Group:  DUAL MODE, INTERNAL
  817.  
  818.         Use:  To free RAM used by the 10 clipboards.
  819.  
  820.      Syntax:  CC<c>
  821.  
  822.     Example:  CC2
  823.  
  824.  Parameters:  <c> The clipboard to clear, or -1 for all clipboards.
  825.  
  826.  
  827. CC releases memory taken by the clipboards when copying images.  <c> is the
  828. clipboard to clear, or use -1 to clear all clipboards at once.  Unless you
  829. are going to use an image later in a GETScript file, it is a good idea to
  830. clear the clipboard the image uses as soon as it is pasted back to the
  831. screen.
  832.  
  833.  
  834.  
  835.  
  836. CLEAR SCREEN  (CS)
  837. ~~~~~~~~~~~~~~~~~~
  838.  
  839.       Group:  DUAL MODE, INTERNAL
  840.  
  841.         Use:  Clear screen to current background color.
  842.  
  843.      Syntax:  CS
  844.  
  845.     Example:  CS
  846.  
  847.  Parameters:  * NONE *
  848.  
  849.  
  850. CS clears the current active display page to the current background color.
  851.  
  852.  
  853.  
  854.  
  855. CLOSE WINDOW  (CW)
  856. ~~~~~~~~~~~~~~~~~~
  857.  
  858.       Group:  TEXT MODE, INTERNAL
  859.  
  860.         Use:  Closes last opened window.
  861.  
  862.      Syntax:  CW
  863.  
  864.     Example:  CW
  865.  
  866.  Parameters:  * NONE *
  867.  
  868.  
  869. CW will close the last window opened.  See OPEN WINDOW for more
  870. information.
  871.  
  872.  
  873.  
  874.  
  875. COLOR  (CO)
  876. ~~~~~~~~~~~
  877.  
  878.       Group:  DUAL MODE, INTERNAL
  879.  
  880.         Use:  Set current foreground and background colors.
  881.  
  882.      Syntax:  CO<fc>|<bc>
  883.  
  884.     Example:  CO15|1
  885.  
  886.  Parameters:  <fc> Foreground color.
  887.               <bc> Background color.
  888.  
  889.  
  890. CO changes the current foreground and background printing and plotting
  891. colors.  CO has no effect on the color set and/or used in DRAW commands.
  892.  
  893.  
  894.  
  895.  
  896. COPY IMAGE  (CI)
  897. ~~~~~~~~~~~~~~~~
  898.  
  899.       Group:  GRAPHICS MODE, INTERNAL
  900.  
  901.         Use:  Copy a portion of the screen to RAM.
  902.  
  903.      Syntax:  CI<x1>|<y1>|<x2>|<y2>|<c>
  904.  
  905.     Example:  CI10|10|35|20|1
  906.  
  907.  Parameters:  <x1> Upper left X coordinate.
  908.               <y1> Upper left Y coordinate.
  909.               <x2> Lower right X coordinate.
  910.               <y2> Lower right Y coordinate.
  911.               <c>  Clipboard to copy to.
  912.  
  913.  
  914. CI will copy a rectangular portion of the screen to RAM.  The size of the
  915. screen image that can be cut depends on available system RAM and the
  916. graphics mode being used.  You may cut up to ten images at one time, one
  917. per clipboard.  Values for <c> are 0 through 9, inclusive.  Each clipboard
  918. uses a fair amount of RAM to store an image (especially with 256 colors),
  919. so it is a good idea to use only as many clipboards as needed to get the
  920. task done.  Free up clipboard memory whenever possible with the CLEAR
  921. CLIPBOARD command.
  922.  
  923.  
  924.  
  925.  
  926. CURSOR OFF (C0)
  927. ~~~~~~~~~~~~~~~
  928.  
  929.       Group:  TEXT MODE, INTERNAL
  930.  
  931.         Use:  Make the text cursor invisible.
  932.  
  933.      Syntax:  C0
  934.  
  935.     Example:  C0
  936.  
  937.  Parameters:  * NONE *
  938.  
  939.  
  940. C0 hides the text cursor from view.
  941.  
  942.  
  943.  
  944.  
  945. CURSOR ON  (C1)
  946. ~~~~~~~~~~~~~~~
  947.  
  948.       Group:  TEXT MODE, INTERNAL
  949.  
  950.         Use:  Make the text cursor visible.
  951.  
  952.      Syntax:  C1
  953.  
  954.     Example:  C1
  955.  
  956.  Parameters:  * NONE *
  957.  
  958.  
  959. C1 displays the text cursor on the screen at the current text cursor
  960. position.
  961.  
  962.  
  963.  
  964.  
  965. DEBUG  (DB)
  966. ~~~~~~~~~~~
  967.  
  968.       Group:  GRAPHICS MODE, INTERNAL
  969.  
  970.         Use:  Draws a set of crosshairs to assist in finding points.
  971.  
  972.      Syntax:  DB
  973.  
  974.     Example:  DB
  975.  
  976.  Parameters:  * NONE *
  977.  
  978.  
  979. DB displays a set of crosshairs that can be moved around the screen using
  980. the cursor keys.  Debug is helpful for finding points on the screen while
  981. drawing.  Commands while debugging are:
  982.  
  983.            [Cursor Keys] - Move cursor around screen.
  984.  
  985.               [1] to [9] - Change the stepping speed of the cursor.
  986.  
  987.                  [ENTER] - Display coordinates of cursor and plot a dot
  988.                            at the current cursor coordinates.
  989.  
  990.                    [ESC] - Exit Debug mode and resume GETScript.
  991.  
  992. DB will destroy most GETS values such as screen scale and screen offset.
  993. Make sure that the current viewing page and the current active page are the
  994. same before you issue a DB command or the debug cursor will not be visible.
  995. Also be sure to set the drawing color and the current color to values that
  996. can been seen on the background you are editing.  DB has no effect when you
  997. run a GETScript online - it is only functional when running a script from
  998. the DOS command line.  For additional debugging, see the EXECUTION SPEED
  999. command.
  1000.  
  1001.  
  1002.  
  1003.  
  1004. DELAY  (DL)
  1005. ~~~~~~~~~~~
  1006.  
  1007.       Group:  DUAL MODE, INTERNAL
  1008.  
  1009.         Use:  Pause the execution of a GETScript.
  1010.  
  1011.      Syntax:  DL<s>
  1012.  
  1013.     Example:  DL1.5
  1014.  
  1015.  Parameters:  <s> Number of seconds to pause.
  1016.  
  1017.  
  1018. DL pauses the execution of a GETScript for <s> seconds or until a key is
  1019. pressed by the user.  For an alternate delay command, see EXECUTION SPEED.
  1020.  
  1021.  
  1022.  
  1023.  
  1024. DRAW  (DC)
  1025. ~~~~~~~~~~
  1026.  
  1027.       Group:  GRAPHICS MODE, INTERNAL
  1028.  
  1029.         Use:  Draw a shape at any angle or scale.
  1030.  
  1031.      Syntax:  DC[command]
  1032.  
  1033.     Example:  DCs4c15bm100,100u10r10d10l10
  1034.  
  1035.  Parameters:  [command] is a draw macro command.
  1036.  
  1037.  
  1038. DC is used to draw a complex shape that needs to be scaled or rotated.  The
  1039. drawing macro language is compatible with the GWBASIC syntax for the DRAW
  1040. command.  Drawing commands are as follows:
  1041.  
  1042.            B - Precedes a drawing command.  Moves cursor without drawing.
  1043.            N - Precedes a drawing command.  Returns cursor to original
  1044.                position after drawing.
  1045.  
  1046.         Mx,y - Draw to x,y (absolute).
  1047.        M+x,y - Draw to +x and +y (relative).
  1048.        M-x,y - Draw to -x and -y (relative).
  1049.           Ux - Draw up x units.
  1050.           Dx - Draw down x units.
  1051.           Rx - Draw right x units.
  1052.           Lx - Draw left x units.
  1053.           Ex - Draw up and right x units.
  1054.           Fx - Draw down and right x units.
  1055.           Gx - Draw down and left x units.
  1056.           Hx - up and left x units.
  1057.           
  1058.           Tx - Rotate to x where x is between 0 and 3 (90 degrees each).
  1059.          TAx - Rotate to x degrees.
  1060.  
  1061.           Sx - Set scale factor.  Default scale (1 unit = 1 pixel) is 4.
  1062.  
  1063.           Cx - Set color to x.
  1064.  
  1065.         Px,y - Fill area (paint) with color x until it hits color y.
  1066.  
  1067. DC has the ability to draw, rotate, and scale shapes.  By using DC to
  1068. create images, a programmer may then rotate the image to any angle or scale
  1069. the image to any size.  The SET SCALE and SET OFFSET commands have no
  1070. effect on DRAW.  The color set by COLOR is not used in a DRAW command, DRAW
  1071. must have the color set within the drawing macro.  Any options such as
  1072. rotation, color, and scale that are set in a previous DRAW command are
  1073. remembered until they are changed by another DRAW statement.  It is a good
  1074. idea to begin each script that will contain a drawing macro with a command
  1075. that will reset the drawing macro to defaults (DCs4c15ta0bm0,0).
  1076.  
  1077.  
  1078.  
  1079. END MACRO  (EM)
  1080. ~~~~~~~~~~~~~~~
  1081.  
  1082.       Group:  DUAL MODE, INTERNAL
  1083.  
  1084.         Use:  End a macro definition started with MM (MAKE MACRO).
  1085.  
  1086.      Syntax:  EM
  1087.  
  1088.     Example:  EM
  1089.  
  1090.  Parameters:  * NONE *
  1091.  
  1092.  
  1093. EM should be placed at the end of all macro definitions to signal the end
  1094. of the macro being defined.  See MAKE MACRO and USE MACRO.
  1095.  
  1096.  
  1097.  
  1098.  
  1099. EXECUTION SPEED (XS)
  1100. ~~~~~~~~~~~~~~~~~~~~
  1101.  
  1102.       Group:  DUAL MODE, INTERNAL
  1103.  
  1104.         Use:  Slow down the execution of a script file.
  1105.  
  1106.      Syntax:  XS<s>
  1107.  
  1108.     Example:  XS0.2
  1109.  
  1110.  Parameters:  <s> Number of seconds to pause between commands.
  1111.  
  1112.  
  1113. XS is an alternative to using multiple DL (DELAY) commands.  For example,
  1114. if XS is set to 0.2, GETS will pause for 0.2 seconds between each GETScript
  1115. command.  Useful for slowing down fades & wipes.  XS is also helpful when
  1116. debugging.  Setting XS to 0.5 slows the script down enough to watch each
  1117. command be executed one at a time to find the problem.
  1118.  
  1119.  
  1120.  
  1121.  
  1122. EXIT GETS MODE  (EG)
  1123. ~~~~~~~~~~~~~~~~~~~~
  1124.  
  1125.       Group:  DUAL MODE, INTERNAL
  1126.  
  1127.         Use:  Exit GETS mode to Terminal mode.
  1128.  
  1129.      Syntax:  EG
  1130.  
  1131.     Example:  EG
  1132.  
  1133.  Parameters:  * NONE *
  1134.  
  1135.  
  1136. EG will exit the current GETScript and return to Terminal mode.  All
  1137. GETScript files must end with an EG command.
  1138.  
  1139.  
  1140.  
  1141.  
  1142. FILL  (FI)
  1143. ~~~~~~~~~~
  1144.  
  1145.       Group:  GRAPHICS MODE, INTERNAL
  1146.  
  1147.         Use:  Fill a shape with color.
  1148.  
  1149.      Syntax:  FI<fc>|<bc>|<x>|<y>
  1150.  
  1151.     Example:  FI7|8|320|175
  1152.  
  1153.  Parameters:  <fc> Fill color.  Object will be filled with this color.
  1154.               <bc> Border color.  Object will be filled until this color
  1155.                    is hit.  Use color <bc> to mark off areas to be filled.
  1156.               <x>  X coordinate of fill starting point.
  1157.               <y>  Y coordinate of fill starting point.
  1158.  
  1159.  
  1160. FI will fill an object with color <fc> until it reaches a boundary drawn in
  1161. color <bc>.  Fill will also quit filling if it finds nothing to do, such as
  1162. filling an area with a color that already exists within that area.  If FILL
  1163. seems to be incorrectly filling an object, fill the object twice: once with
  1164. a color that is unused in that section of the picture, and again with the
  1165. desired color.
  1166.  
  1167.  
  1168.  
  1169.  
  1170. FILLED BOX  (FB)
  1171. ~~~~~~~~~~~~~~~~
  1172.  
  1173.       Group:  GRAPHICS MODE, INTERNAL
  1174.  
  1175.         Use:  Draw a box filled with the current color.
  1176.  
  1177.      Syntax:  FB<x1>|<y1>|<x2>|<y2>
  1178.  
  1179.     Example:  FB10|15|75|80
  1180.  
  1181.  Parameters:  <x1> Upper left X coordinate.
  1182.               <y1> Upper left Y coordinate.
  1183.               <x2> Lower right X coordinate.
  1184.               <y2> Lower right Y coordinate.
  1185.  
  1186.  
  1187. FB draws and fills a box at the specified screen location.  The color of
  1188. the box will be the current color.
  1189.  
  1190.  
  1191.  
  1192.  
  1193. FILLED CIRCLE  (FC)
  1194. ~~~~~~~~~~~~~~~~~~~
  1195.  
  1196.       Group:  GRAPHICS MODE, INTERNAL
  1197.  
  1198.         Use:  Draw a circle and fill it with the current color.
  1199.  
  1200.      Syntax:  FC<x>|<y>|<r>
  1201.  
  1202.     Example:  FC320|175|50
  1203.  
  1204.  Parameters:  <x> X coordinate of center of circle.
  1205.               <y> Y coordinate of center of circle.
  1206.               <r> Radius of circle, measured from center to top of circle.
  1207.  
  1208.  
  1209. FC will draw a filled circle with a center at (<x>,<y>) and a radius of <r>
  1210. that is filled with the current color.
  1211.  
  1212.  
  1213.  
  1214.  
  1215. FILLED ELLIPSE  (FE)
  1216. ~~~~~~~~~~~~~~~~~~~~
  1217.  
  1218.       Group:  GRAPHICS MODE, INTERNAL
  1219.  
  1220.         Use:  Draw an ellipse filled with the current color.
  1221.  
  1222.      Syntax:  FE<x>|<y>|<r>|<a>
  1223.  
  1224.     Example:  FE100|200|30|1.2
  1225.  
  1226.  Parameters:  <x> X coordinate of the center of the ellipse.
  1227.               <y> Y coordinate of the center of the ellipse.
  1228.               <r> Radius.  See below.
  1229.               <a> Aspect ratio.  See below.
  1230.  
  1231.  
  1232. FE draws an ellipse filled in the current color.  The aspect ratio
  1233. determines the shape of the ellipse.  The aspect is expressed as a ratio
  1234. of the Y axis to the X axis.  If the value for <a> is less than one, the
  1235. radius refers to the X axis.  If <a> is greater than one, the radius refers
  1236. to the Y axis.
  1237.  
  1238.  
  1239.  
  1240.  
  1241. FILLED POLYGON  (FP)
  1242. ~~~~~~~~~~~~~~~~~~~~
  1243.  
  1244.       Group:  GRAPHICS MODE, INTERNAL
  1245.  
  1246.         Use:  Draw a polygon filled with the current color.
  1247.  
  1248.      Syntax:  FP<x1>|<y1>|<x2>|<y2>|<x3>|<y3>| ... |<xn>|<yn>
  1249.  
  1250.     Example:  FP100|10|190|100|10|100
  1251.  
  1252.  Parameters:  <x1> First X coordinate.
  1253.               <y1> First Y coordinate.
  1254.               <x2> Second X coordinate.
  1255.               <y2> Second Y coordinate.
  1256.               <x3> Third X coordinate.
  1257.               <y3> Third Y coordinate.
  1258.                 .
  1259.                 .
  1260.                 .
  1261.               <xn> Nth X coordinate.
  1262.               <yn> Nth Y coordinate.
  1263.  
  1264.  
  1265. FP draws a filled polygon in the current color.  The polygon is defined by
  1266. a series of points given in (x,y) coordinates.  The last coordinate given
  1267. will automatically be connected to the first, closing the polygon.  Any
  1268. number of points may be used.  The coordinate used for the fill is the
  1269. average of all the points used in the polygon, therefore it is possible
  1270. that the fill point will land outside the polygon and flood the screen.  If
  1271. the image floods, use the HOLLOW POLYGON command and manually set the fill
  1272. point using FILL.
  1273.  
  1274.  
  1275.  
  1276.  
  1277. HOLLOW BOX  (HB)
  1278. ~~~~~~~~~~~~~~~~
  1279.  
  1280.       Group:  GRAPHICS MODE, INTERNAL
  1281.  
  1282.         Use:  Draw a box in the current color.
  1283.  
  1284.      Syntax:  HB<x1>|<y1>|<x2>|<y2>
  1285.  
  1286.     Example:  HB10|15|75|90
  1287.  
  1288.  Parameters:  <x1> Upper left X coordinate.
  1289.               <y1> Upper left Y coordinate.
  1290.               <x2> Lower right X coordinate.
  1291.               <y2> Lower right Y coordinate.
  1292.  
  1293.  
  1294. HB draws a hollow box at the specified screen location in the current
  1295. color.
  1296.  
  1297.  
  1298.  
  1299.  
  1300. HOLLOW CIRCLE  (HC)
  1301. ~~~~~~~~~~~~~~~~~~~
  1302.  
  1303.       Group:  GRAPHICS MODE, INTERNAL
  1304.  
  1305.         Use:  Draw a circle in the current color.
  1306.  
  1307.      Syntax:  HC<x>|<y>|<r>
  1308.  
  1309.     Example:  HC250|75|50
  1310.  
  1311.  Parameters:  <x> X coordinate of center of circle.
  1312.               <y> Y coordinate of center of circle.
  1313.               <r> Radius of circle, measured from center to top of circle.
  1314.  
  1315.  
  1316. FC will draw a hollow circle with a center at (<x>,<y>) and a radius of <r>
  1317. using the current color.
  1318.  
  1319.  
  1320.  
  1321.  
  1322. HOLLOW ELLIPSE  (HE)
  1323. ~~~~~~~~~~~~~~~~~~~~
  1324.  
  1325.       Group:  GRAPHICS MODE, INTERNAL
  1326.  
  1327.         Use:  Draw an ellipse.
  1328.  
  1329.      Syntax:  HE<x>|<y>|<r>|<a>
  1330.  
  1331.     Example:  HE100|200|30|1.2
  1332.  
  1333.  Parameters:  <x> X coordinate of the center of the ellipse.
  1334.               <y> Y coordinate of the center of the ellipse.
  1335.               <r> Radius.  See below.
  1336.               <a> Aspect ratio.  See below.
  1337.  
  1338.  
  1339. HE draws an ellipse.  The aspect ratio determines the shape of the ellipse.
  1340. The aspect is expressed as a ratio of the Y axis to the X axis.  If the
  1341. value for <a> is less than one, the radius refers to the X axis.  If <a> is
  1342. greater than one, the radius refers to the Y axis.
  1343.  
  1344.  
  1345.  
  1346.  
  1347. HOLLOW POLYGON  (HP)
  1348. ~~~~~~~~~~~~~~~~~~~~
  1349.  
  1350.       Group:  GRAPHICS MODE, INTERNAL
  1351.  
  1352.         Use:  Draw a polygon in the current color.
  1353.  
  1354.      Syntax:  HP<x1>|<y1>|<x2>|<y2>|<x3>|<y3>| ... |<xn>|<yn>
  1355.  
  1356.     Example:  HP10|10|190|10|100|100
  1357.  
  1358.  Parameters:  <x1> First X coordinate.
  1359.               <y1> First Y coordinate.
  1360.               <x2> Second X coordinate.
  1361.               <y2> Second Y coordinate.
  1362.               <x3> Third X coordinate.
  1363.               <y3> Third Y coordinate.
  1364.                 .
  1365.                 .
  1366.                 .
  1367.               <xn> Nth X coordinate.
  1368.               <yn> Nth Y coordinate.
  1369.  
  1370.  
  1371. HP draws a polygon in the current color.  The polygon is defined by a
  1372. series of points given in (x,y) coordinates.  The last coordinate given
  1373. will automatically be connected to the first, closing the polygon.  Any
  1374. number of points may be used.
  1375.  
  1376.  
  1377.  
  1378.  
  1379. LINE  (LN)
  1380. ~~~~~~~~~~
  1381.  
  1382.       Group:  GRAPHICS MODE, INTERNAL
  1383.  
  1384.         Use:  Draw a line in the current color.
  1385.  
  1386.      Syntax:  LN<x1>|<y1>|<x2>|<y2>| ... |<xn>|<yn>
  1387.  
  1388.     Example:  LN10|10|300|20
  1389.  
  1390.  Parameters:  <x1> First X coordinate.
  1391.               <y1> First Y coordinate.
  1392.               <x2> Second X coordinate.
  1393.               <y2> Second Y coordinate.
  1394.                 .
  1395.                 .
  1396.                 .
  1397.               <xn> Nth X coordinate.
  1398.               <yn> Nth Y coordinate.
  1399.  
  1400.  
  1401. LN draws a line from (<x1>,<y1>) to (<x2>,<y2>) to (<xn>,<yn>) in the
  1402. current color.  Any number of points may be used.
  1403.  
  1404.  
  1405.  
  1406.  
  1407. LINE INPUT  (LI)
  1408. ~~~~~~~~~~~~~~~~
  1409.  
  1410.       Group:  TEXT MODE, INTERNAL
  1411.  
  1412.         Use:  Read a line of text from the keyboard.
  1413.  
  1414.      Syntax:  LI<m>
  1415.  
  1416.     Example:  LI79
  1417.  
  1418.  Parameters:  <m> The mode or length to use.  See below.
  1419.  
  1420.  
  1421. LI reads a line of text from the keyboard and returns it to the BBS.  The
  1422. value of <m> determines how LI will act and how many characters LI will
  1423. accept.  Values for <m> are as follows:
  1424.  
  1425.          -1  -  Read one keypress without waiting for a carriage
  1426.                 return from the user.
  1427.  
  1428.           0  -  Read one keypress "on the fly".  If there is no
  1429.                 key being pressed, nothing is returned.
  1430.  
  1431.     1 to 80  -  Read 1 to 80 characters from the keyboard and
  1432.                 wait for a carriage return before continuing.
  1433.  
  1434. LI supports full editing keys when reading more than one character.  The
  1435. supported keys are as follows:
  1436.  
  1437.       [HOME] - Jump to beginning of line.
  1438.  
  1439.        [END] - Jump to end of line.
  1440.  
  1441.         [->] - Move cursor right one character.
  1442.  
  1443.         [<-] - Move cursor left one character.
  1444.  
  1445.        [DEL] - Delete character under cursor.
  1446.  
  1447.       [BKSP] - Delete from cursor to end of line.
  1448.  
  1449.        [INS] - Insert blank space at cursor.
  1450.  
  1451.  
  1452.  
  1453.  
  1454. MAKE MACRO  (MM)
  1455. ~~~~~~~~~~~~~~~~
  1456.  
  1457.       Group:  DUAL MODE, INTERNAL
  1458.  
  1459.         Use:  Create a macro of often used commands.
  1460.  
  1461.      Syntax:  MM<n>
  1462.  
  1463.     Example:  MM5
  1464.  
  1465.  Parameters:  <n> Number of macro to create.  May be from 0 to 999.
  1466.  
  1467.  
  1468. MM creates a macro file in the temporary directory that contains all the
  1469. commands listed between MM and the next EM (END MACRO).  The macro file
  1470. can be used later by using the UM (USE MACRO) command.  By using macros,
  1471. the time needed to transmit a complex image can be reduced.  Any commands
  1472. that are to be repeated should be placed in a macro and called with the UM
  1473. command when needed.  Commands placed within MM and EM are not executed
  1474. until called with UM.  MM is for use with GETSFly only.  For GETSLaunch,
  1475. use the SEND FILE and READ FILE commands.  For more information on macros,
  1476. see END MACRO and USE MACRO.  All macros will be deleted when you exit from
  1477. GETS to DOS, there is no need to delete them manually.
  1478.  
  1479.  
  1480.  
  1481.  
  1482. OPEN DIALOG BOX  (OD)
  1483. ~~~~~~~~~~~~~~~~~~~~~
  1484.  
  1485.       Group:  TEXT MODE, INTERNAL
  1486.  
  1487.         Use:  Pop up a dialog box with a one line message.
  1488.  
  1489.      Syntax:  OD[message]
  1490.  
  1491.     Example:  ODThis is a dialog box!
  1492.  
  1493.  Parameters:  [message] A one line message to display in a dialog box.
  1494.  
  1495.  
  1496. OD displays a dialog box in the current screen colors that contains the
  1497. message [message].  It remains on the screen until the user presses a key.
  1498.  
  1499.  
  1500.  
  1501.  
  1502. OPEN WINDOW  (OW)
  1503. ~~~~~~~~~~~~~~~~~
  1504.  
  1505.       Group:  TEXT MODE, INTERNAL
  1506.  
  1507.         Use:  Open a pop-up window.
  1508.  
  1509.      Syntax:  OW<x1>|<y1>|<x2>|<y2>|<c1>|<c2>
  1510.  
  1511.     Example:  OW5|5|75|20|15|4
  1512.  
  1513.  Parameters:  <x1> Upper left X coordinate.
  1514.               <y1> Upper left Y coordinate.
  1515.               <x2> Lower right X coordinate.
  1516.               <y2> Lower right Y coordinate.
  1517.               <c1> Foreground color of window.
  1518.               <c2> Background color of window.
  1519.  
  1520.  
  1521. OW opens a pop-up window that may later be removed by the CW command.  Only
  1522. one window may be open at a time.  If two are opened, only the last one
  1523. created may be closed.  OW uses more than one display page to operate, so
  1524. any hidden pages may be destroyed.  The current screen colors will be set
  1525. to match <c1> and <c2> of the window.
  1526.  
  1527.  
  1528.  
  1529.  
  1530. PAGE COPY  (PC)
  1531. ~~~~~~~~~~~~~~~
  1532.  
  1533.       Group:  DUAL MODE, INTERNAL
  1534.  
  1535.         Use:  Copy one display page to another.
  1536.  
  1537.      Syntax:  PC<s>|<t>
  1538.  
  1539.     Example:  PC1|0
  1540.  
  1541.  Parameters:  <s> Source page to copy from.
  1542.               <t> Target page to copy to.
  1543.  
  1544.  
  1545. PC copies an entire display page to another page.  Useful for flicker
  1546. free animation.
  1547.  
  1548.  
  1549.  
  1550.  
  1551. PASTE IMAGE  (PI)
  1552. ~~~~~~~~~~~~~~~~~
  1553.  
  1554.       Group:  GRAPHICS MODE, INTERNAL
  1555.  
  1556.         Use:  Paste a cut image back to the screen.
  1557.  
  1558.      Syntax:  PI<x1>|<y1>|<c>|[mode]
  1559.  
  1560.     Example:  PI50|75|1|PSET
  1561.  
  1562.  Parameters:  <x1>   Upper left X coordinate.
  1563.               <y1>   Upper left Y coordinate.
  1564.               <c>    Clipboard to paste from.
  1565.               [mode] Mode to use when pasting image.  See below.
  1566.  
  1567.  
  1568. PI pastes an image that was copied with COPY IMAGE back to the screen.
  1569. Be sure that all four edges of a copied image block fit within the screen
  1570. when they are pasted back or PASTE IMAGE will not work.  <c> determines
  1571. which clipboard the image will be pasted from.  Valid values for <c> are
  1572. from 0 to 9, inclusive.  Valid pasting modes are:
  1573.  
  1574.            PSET - Overwrites existing image with pasted image.
  1575.          PRESET - Overwrites existing image with a negated pasted image.
  1576.             AND - Merges image using a logical AND operation.  Pixels that
  1577.                   are the same color in both the pasted image and the
  1578.                   existing image remain the same, the rest do not.
  1579.              OR - Merges image using a logical OR operation.  Pasted image
  1580.                   is superimposed with existing image.
  1581.             XOR - Inverts existing image wherever a pixel exists in pasted
  1582.                   image.  Two XOR pastes in the same location will return
  1583.                   the background to its original state.  Repeated XORs can
  1584.                   be used for animation.
  1585.  
  1586. After pasting an image back to the screen, it is a good idea to release the
  1587. memory the image occupied on the clipboard by using the CLEAR CLIPBOARD
  1588. command to remove the current image from the clipboard.
  1589.  
  1590.  
  1591.  
  1592.  
  1593. PLAY ADLIB  (PA)
  1594. ~~~~~~~~~~~~~~~~
  1595.  
  1596.       Group:  DUAL MODE, EXTERNAL
  1597.  
  1598.         Use:  Play an FM music file to an AdLib compatible sound card.
  1599.  
  1600.      Syntax:  PA[filename]
  1601.  
  1602.     Example:  PAtitlesng
  1603.  
  1604.  Parameters:  [filename] The filename of the song to play.  No extension.
  1605.  
  1606.  
  1607. PA plays an FM sound file (see the appendix on sound for file format) to
  1608. any AdLib compatible sound card (AdLib, Sound Blaster, Sound Master II).
  1609. PLAY ADLIB is an external command and is not available in unregistered
  1610. versions of GETS.  See CALL DOS for more information on external commands.
  1611.  
  1612.  
  1613.  
  1614.  
  1615. PLAY DIGITAL  (PD)
  1616. ~~~~~~~~~~~~~~~~~~
  1617.  
  1618. Group:  DUAL MODE, EXTERNAL
  1619.  
  1620. Use:  Play an 8 bit digitized sound file.
  1621.  
  1622. Syntax:  PD[filename]
  1623.  
  1624. Example:  PDbombs
  1625.  
  1626. Parameters:  [filename] Filename of the file to play.  No extension.
  1627.  
  1628.  
  1629. PD will play an 8 bit digital sound file (see the appendix on sound for
  1630. file format) to any supported sound device (all Covox, Sound Blaster,
  1631. internal speaker).  PLAY DIGITAL is an external command and is not
  1632. available in unregistered versions of GETS.  See CALL DOS for more
  1633. information on external commands.
  1634.  
  1635.  
  1636.  
  1637.  
  1638. PLAY MUSIC  (PM)
  1639. ~~~~~~~~~~~~~~~~
  1640.  
  1641.       Group:  DUAL MODE, INTERNAL
  1642.  
  1643.         Use:  Play music or sound on the internal speaker.
  1644.  
  1645.      Syntax:  PM[command]
  1646.  
  1647.     Example:  PMmbcd>ef<g
  1648.  
  1649.  Parameters:  [command] is a GWBASIC compatible PLAY command.  See below.
  1650.  
  1651.  
  1652. PM plays [command] on the internal speaker.  Options inside of [command]
  1653. are as follows:
  1654.  
  1655.      On - Sets current octave to n.  Values for n are 0 to 6.
  1656.  
  1657.       > - Increase octave by one.  Cannot be greater than 6.
  1658.  
  1659.       < - Decrease octave by one.  Cannot be lower than 0.
  1660.  
  1661.     A-G - Plays notes A to G.  Placing a - behind a note makes it a flat.
  1662.           Placing a + or a # behind a note makes it a sharp.  If a period
  1663.           (".") is behind the note, it will be played for one and a half
  1664.           times the length determined by length*tempo.  Multiple periods
  1665.           may be used.
  1666.  
  1667.      Nn - Plays note n.  Values for n are from 0 to 84.  An n of 0
  1668.           determines a rest.
  1669.  
  1670.      Ln - Set length of notes.  Range is 1 to 64 (L1 = Whole note, etc).
  1671.           You may follow a note with a length if you wish only that note
  1672.           to be played at a different length (i.e. B64 = L64B).
  1673.  
  1674.      MN - Music Normal.  Notes play for 7/8 time of length.
  1675.  
  1676.      ML - Music Legato.  Notes play full time of length.
  1677.  
  1678.      MS - Music Staccato.  Notes play for 3/4 time of length.
  1679.  
  1680.      Pn - Pause for n where n is a value of 1 to 64 (P1 = Whole pause).
  1681.  
  1682.      Tn - Set tempo or number of quarter (L4) notes per minute.  Values
  1683.           for n are 32 to 255.  Default is 120.
  1684.  
  1685.      MF - Music Foreground.  Music plays in foreground and pauses the
  1686.           GETScript until finished.
  1687.  
  1688.      MB - Music Background.  Music plays while GETScript continues to run.
  1689.           A maximum of 32 notes may be placed into the background music
  1690.           buffer at one time.
  1691.  
  1692.  
  1693.  
  1694.  
  1695. PLAY SOUND  (PS)
  1696. ~~~~~~~~~~~~~~~~
  1697.  
  1698.       Group:  DUAL MODE, INTERNAL
  1699.  
  1700.         Use:  Play a sound by frequency instead of by note.
  1701.  
  1702.      Syntax:  PS<f>|<d>
  1703.  
  1704.     Example:  PS2000|10
  1705.  
  1706.  Parameters:  <f> Frequency of sound in Hertz.
  1707.               <d> Duration of sound in clock ticks.
  1708.  
  1709.  
  1710. PS will play a sound at <f> hertz for <d> clock ticks.  There are 18.2
  1711. clock ticks per second.  Legal values for <f> are 37 to 32767 inclusive.
  1712. Legal values for <d> are 0 to 65535 inclusive.
  1713.  
  1714.  
  1715.  
  1716.  
  1717. POINT  (PT)
  1718. ~~~~~~~~~~~
  1719.  
  1720.       Group:  GRAPHICS MODE, INTERNAL
  1721.  
  1722.         Use:  Plot a single point on the graphics screen.
  1723.  
  1724.      Syntax:  PT<x>|<y>
  1725.  
  1726.     Example:  PT5|12
  1727.  
  1728.  Parameters:  <x> X coordinate of point.
  1729.               <y> Y coordinate of point.
  1730.  
  1731.  
  1732. PT plots a single point on the graphics screen in the current color.
  1733.  
  1734.  
  1735.  
  1736.  
  1737. PRINT  (PR)
  1738. ~~~~~~~~~~~
  1739.  
  1740.       Group:  DUAL MODE, INTERNAL
  1741.  
  1742.         Use:  Display text on the screen.
  1743.  
  1744.      Syntax:  PR[message]
  1745.  
  1746.     Example:  PRLook at this!
  1747.  
  1748.  Parameters:  [message] Message to display on the screen.
  1749.  
  1750.  
  1751. PR displays a message on the screen at the current cursor location.  The
  1752. message is printed to the screen without a carriage return.  To move the
  1753. cursor to the next line after printing a message, use the CARRIAGE RETURN
  1754. command.  To reposition the text cursor, see XY CURSOR MOVE.
  1755.  
  1756.  
  1757.  
  1758.  
  1759. READ FILE  (RF)
  1760. ~~~~~~~~~~~~~~~
  1761.  
  1762.       Group:  DUAL MODE, INTERNAL
  1763.  
  1764.         Use:  Call a GETScript or GETS Clip Art file from disk.
  1765.  
  1766.      Syntax:  RF[filename].[ext]
  1767.  
  1768.     Example:  RFclipart.gca
  1769.  
  1770.  Parameters:  [filename].[ext] Filename to use, including extension.
  1771.  
  1772.  
  1773. RF transfers control to another GETScript or GETS Clip Art file from the
  1774. current GETScript.  The file must exist in the current directory on the
  1775. remote user's drive.  When the called file ends, control is passed back
  1776. to the calling file at the point it left off.  If a called file ends with
  1777. an EXIT GETS MODE command, it will not return to the calling file and all
  1778. running GETScripts will end.
  1779.  
  1780.  
  1781.  
  1782.  
  1783. SEND FILE  (SF)
  1784. ~~~~~~~~~~~~~~~
  1785.  
  1786.       Group:  DUAL MODE, INTERNAL
  1787.  
  1788.         Use:  Send a GETScript or text file to a remote computer.
  1789.  
  1790.      Syntax:  SF[filename].[ext]
  1791.  
  1792.     Example:  SFclipart.gca
  1793.  
  1794.  Parameters:  [filename].[ext] The file being sent, including extension.
  1795.  
  1796.  
  1797. SF will transmit a GETScript or any ASCII text file to a remote computer.
  1798. Because SF requires interactive communication between GETS and the remote
  1799. program, it is not available in GETSFly mode.
  1800.  
  1801.  
  1802.  
  1803.  
  1804. SET MODE  (SM)
  1805. ~~~~~~~~~~~~~~
  1806.  
  1807.       Group:  DUAL MODE, INTERNAL
  1808.  
  1809.         Use:  Change screen modes.
  1810.  
  1811.      Syntax:  SM<x>
  1812.  
  1813.     Example:  SM9
  1814.  
  1815.  Parameters:  <x> Mode to change to.  See below.
  1816.  
  1817.  
  1818. SM changes the current screen display mode to any of several graphics and
  1819. text modes available.  The modes used are compatible with GWBASIC's SCREEN
  1820. syntax.  Modes are as follows:
  1821.  
  1822.       0 - Text Only; 16 of 16 colors; 80x50 maximum text display size;
  1823.           Maximum of 8 screen pages
  1824.  
  1825.       1 - Text/Graphics; 4 of 16 colors; 320x200 graphics resolution; 40x25
  1826.           text display size; 1 screen page
  1827.  
  1828.       2 - Text/Graphics; 2 of 2 colors; 640x200 graphics resolution; 80x25
  1829.           text display size; 1 screen page
  1830.  
  1831.       3 - Hercules Monochrome Text/Graphics; 2 of 2 colors; 720x348
  1832.           graphics resolution; 80x25 text display size; 2 screen pages
  1833.  
  1834.       4 - Olivetti and AT&T; 1 of 16 colors; 640x400 graphics
  1835.           resolution; 80x25 text display size; 1 screen page
  1836.  
  1837.   5 & 6 - Unused - Reserved.
  1838.  
  1839.       7 - Text/Graphics; 16 of 64 colors; 320x200 graphics resolution;
  1840.           40x25 text display size; 4 screen pages
  1841.  
  1842.       8 - Text/Graphics; 16 of 64 colors; 640x200 graphics resolution;
  1843.           80x25 text display size; 2 screen pages
  1844.  
  1845.       9 - Text/Graphics; 16 of 64 colors; 640x350 graphics resolution;
  1846.           80x43 maximum text display size; 2 screen pages
  1847.  
  1848.      10 - Text/Graphics (monochrome only); 4 of 9 colors; 640x350 graphics
  1849.           resolution; 80x43 maximum text display size; 2 pages
  1850.  
  1851.      11 - Text/Graphics; 2 of 256 colors; 640x480 graphics resolution;
  1852.           80x60 maximum text display size; 1 screen page
  1853.  
  1854.      12 - Text/Graphics; 16 of 256 colors; 640x480 graphics resolution;
  1855.           80x60 maximum text display size; 1 screen page
  1856.  
  1857.      13 - Text/Graphics; 256 of 256 colors; 320x200 graphics resolution;
  1858.           40x25 text display size; 1 screen page
  1859.  
  1860.  
  1861.  
  1862. SET OFFSET  (SO)
  1863. ~~~~~~~~~~~~~~~~
  1864.  
  1865.       Group:  GRAPHICS MODE, INTERNAL
  1866.  
  1867.         Use:  Set offset used by graphics commands.
  1868.  
  1869.      Syntax:  SO<x>|<y>
  1870.  
  1871.     Example:  SO25|25
  1872.  
  1873.  Parameters:  <x> Offset value for X coordinates.
  1874.               <y> Offset value for Y coordinates.
  1875.  
  1876.  
  1877. SO changes the offset of the graphics image from the upper left hand corner
  1878. of the monitor to anywhere else on the screen.  For example, SO10|25 would
  1879. place a point intended for 0,0 at 10,25 on the screen.  By changing the
  1880. offset, an entire image, or sections of an image, can be moved around the
  1881. screen without reprogramming the coordinates that make up the image.
  1882. Positive numbers move the image down and right, negative numbers move the
  1883. image up and left.  Default is SO0|0.
  1884.  
  1885.  
  1886.  
  1887.  
  1888. SET PALETTE  (SP)
  1889. ~~~~~~~~~~~~~~~~~
  1890.  
  1891.       Group:  GRAPHICS MODE, INTERNAL
  1892.  
  1893.         Use:  Define a color palette.
  1894.  
  1895.      Syntax:  SP<c>|<a>
  1896.  
  1897.     Example:  SP15|12312
  1898.  
  1899.  Parameters:  <c> The color to set.
  1900.               <a> The attribute to set color <c> to.
  1901.  
  1902.  
  1903. Use SP to define a custom palette.  Due to the way graphics are stored in
  1904. video RAM, it is possible to have more colors than you can use at one time.
  1905. For example, use SP to define which 256 of the several thousand colors
  1906. available in VGA that you wish to use.  See the appendix on color for more
  1907. information.
  1908.  
  1909.  
  1910.  
  1911.  
  1912. SET SCALE  (SS)
  1913. ~~~~~~~~~~~~~~~
  1914.  
  1915.       Group:  GRAPHICS MODE, INTERNAL
  1916.  
  1917.         Use:  Set scale used by graphics commands.
  1918.  
  1919.      Syntax:  SS<x>|<y>
  1920.  
  1921.     Example:  SS2.25|2.5
  1922.  
  1923.  Parameters:  <x> Scale value for X coordinates.
  1924.               <y> Scale value for Y coordinates.
  1925.  
  1926.  
  1927. SS scales the entire graphics display by a factor of <x> horizontally and
  1928. <y> vertically.  For example, a 320x200 (actual, unscaled) screen set to
  1929. SS2|2 (x and y set to 2) has a coordinate range of only 160x100.  SS is
  1930. useful when scaling low-resolution images (320x200) to fit a high-
  1931. resolution screen (640x350).  To make a low-res EGA screen fill a high-res
  1932. EGA screen, a scale of SS2|1.75 would be used.  To shrink a screen in half,
  1933. a scale of SS.5|.5 is used.  Negative numbers will invert the coordinate
  1934. system used (not useful, but can be done).  Default is SS1|1.
  1935.  
  1936.  
  1937.  
  1938.  
  1939. SET SCREEN WIDTH  (SW)
  1940. ~~~~~~~~~~~~~~~~~~~~~~
  1941.  
  1942.       Group:  TEXT MODE, INTERNAL
  1943.  
  1944.         Use:  Change current text screen mode.
  1945.  
  1946.      Syntax:  SW<w>|<h>
  1947.  
  1948.     Example:  SW40|25
  1949.  
  1950.  Parameters:  <w> Screen Width.
  1951.               <h> Screen Height.
  1952.  
  1953.  
  1954. SW changes the mode of a text display.  SW has no effect in monochrome.
  1955. See SET MODE for more information on the limits of <w> and <h>.
  1956.  
  1957.  
  1958.  
  1959.  
  1960. SET VIDEO PAGES  (SV)
  1961. ~~~~~~~~~~~~~~~~~~~~~
  1962.  
  1963.       Group:  DUAL MODE, INTERNAL
  1964.  
  1965.         Use:  Set which page is active and which is visible.
  1966.  
  1967.      Syntax:  SV<a>|<v>
  1968.  
  1969.     Example:  SV1|0
  1970.  
  1971.  Parameters:  <a> Active video page.
  1972.               <v> Visible video page.
  1973.  
  1974.  
  1975. SV is used in conjunction with PAGE COPY to display flicker free animation
  1976. and special video effects.  The active page is the page being drawn to
  1977. while the visible page is the page displayed on the monitor.  By drawing on
  1978. a different page than is being viewed, a programmer can update animation
  1979. without the user seeing it happen until the entire frame is finished.
  1980.  
  1981.  
  1982.  
  1983.  
  1984. USE DEFAULTS  (UD)
  1985. ~~~~~~~~~~~~~~~~~~
  1986.  
  1987.       Group:  DUAL MODE, INTERNAL
  1988.  
  1989.         Use:  Return GETS to the default settings.
  1990.  
  1991.      Syntax:  UD
  1992.  
  1993.     Example:  UD
  1994.  
  1995.  Parameters:  * NONE *
  1996.  
  1997.  
  1998. UD will reset GETS to the default settings.  The actions performed by the
  1999. UD command are:
  2000.  
  2001.           *  Set Screen Mode to 80x25 Text       SM0
  2002.           *  Set Colors to White on Black        CO7|0
  2003.           *  Set Offset to 0,0                   SO0|0
  2004.           *  Set Scale to 1,1                    SS1|1
  2005.           *  Set Video Pages to 0,0              SV0|0
  2006.           *  Clears Screen                       CS
  2007.           *  Places Cursor at 1,1                XY1|1
  2008.           *  Clears all clipboards               CC-1
  2009.  
  2010. It is a good idea to call UD at the end of all scripts to return GETS to
  2011. its original state for the next script.
  2012.  
  2013.  
  2014.  
  2015.  
  2016. USE MACRO  (UM)
  2017. ~~~~~~~~~~~~~~~
  2018.  
  2019.       Group:  DUAL MODE, INTERNAL
  2020.  
  2021.         Use:  Call a macro defined with MM (MAKE MACRO).
  2022.  
  2023.      Syntax:  UM<n>
  2024.  
  2025.     Example:  UM5
  2026.  
  2027.  Parameters:  <n> Number of macro to use.  Can be from 0 to 999.
  2028.  
  2029.  
  2030. UM calls a macro previously defined with MM (MAKE MACRO).  For more
  2031. information, see MAKE MACRO and END MACRO.
  2032.  
  2033.  
  2034.  
  2035.  
  2036. WAIT FOR KEY  (WK)
  2037. ~~~~~~~~~~~~~~~~~~
  2038.  
  2039.       Group:  DUAL MODE, INTERNAL
  2040.  
  2041.         Use:  Wait for a keypress.
  2042.  
  2043.      Syntax:  WK[k]
  2044.  
  2045.     Example:  WKc
  2046.  
  2047.  Parameters:  [k] The key to wait for.
  2048.  
  2049.  
  2050. WK will pause a GETScript until the specified key is pressed.  Use a ~ to
  2051. wait for any key to be pressed.
  2052.  
  2053.  
  2054.  
  2055. XY CURSOR MOVE  (XY)
  2056. ~~~~~~~~~~~~~~~~~~~~
  2057.  
  2058.       Group:  DUAL MODE, INTERNAL
  2059.  
  2060.         Use:  Move text cursor to a new location on the screen.
  2061.  
  2062.      Syntax:  XY<x>|<y>
  2063.  
  2064.     Example:  XY10|5
  2065.  
  2066.  Parameters:  <x> X coordinate of cursor position.
  2067.               <y> Y coordinate of cursor position.
  2068.  
  2069.  
  2070. XY moves the text cursor to the specified location on the screen.  See the
  2071. maximum text display sizes under SET MODE for more information on the
  2072. limits of <x> and <y>.
  2073.  
  2074.  
  2075.  
  2076. APPENDIX A - COLOR
  2077. ~~~~~~~~~~~~~~~~~~
  2078.  
  2079.  
  2080.  
  2081. GETS uses the same method of calling colors as BASIC.  The following charts
  2082. define the default color values for CGA, EGA, and VGA.  Keep in mind that
  2083. any of the values below may be changed with the SP (SET PALETTE) command.
  2084.  
  2085.  
  2086.      TEXT COLORS
  2087.      ~~~~~~~~~~~
  2088.  
  2089.           See "EGA COLORS" for values.  Text can be made to blink by adding
  2090.           16 to any of the Foreground colors.  For example, blinking yellow
  2091.           would be 14+16, color number 30.
  2092.  
  2093.  
  2094.      CGA COLORS
  2095.      ~~~~~~~~~~
  2096.  
  2097.           00 - Black                              02 - Light Magenta
  2098.           01 - Light Cyan                         03 - Bright White
  2099.  
  2100.  
  2101.      EGA COLORS
  2102.      ~~~~~~~~~~
  2103.  
  2104.           Foreground & Background                 Foreground Only
  2105.           ~~~~~~~~~~~~~~~~~~~~~~~                 ~~~~~~~~~~~~~~~
  2106.           00 - Black                              08 - Dark Grey
  2107.           01 - Blue                               09 - Light Blue
  2108.           02 - Green                              10 - Light Green
  2109.           03 - Cyan                               11 - Light Cyan
  2110.           04 - Red                                12 - Light Red
  2111.           05 - Magenta                            13 - Light Magenta
  2112.           06 - Brown                              14 - Yellow
  2113.           07 - White (Light Grey)                 15 - Bright White
  2114.  
  2115.  
  2116.      VGA COLORS
  2117.      ~~~~~~~~~~
  2118.  
  2119.           With 256 colors available at all times, it is much easier to
  2120.           calculate the values of VGA color than to display it in a
  2121.           table.  To calculate a VGA color, take the amount of RED, GREEN,
  2122.           and BLUE in the color and run them through the following formula:
  2123.  
  2124.                   COLOR = 65536 * BLUE + 256 * GREEN + RED
  2125.  
  2126.           The values for RED, BLUE, and GREEN can be anywhere from 0 (not
  2127.           present) to 63 (maximum present).  Because of the way the VGA
  2128.           color palette is defined, you muse use the above formula to set
  2129.           all VGA color values with the SP (SET PALETTE) command before
  2130.           using them.
  2131.  
  2132.  
  2133.  
  2134. APPENDIX B - SOUND
  2135. ~~~~~~~~~~~~~~~~~~
  2136.  
  2137.  
  2138.  
  2139. GETS supports many sound cards and output devices from many manufacturers.
  2140. For those wishing to produce their own music and sound files for GETS, we
  2141. recommend the following:
  2142.  
  2143.  
  2144.        For Digital Sounds
  2145.        ~~~~~~~~~~~~~~~~~~
  2146.  
  2147.        *  A Sound Blaster Music Card.
  2148.        *  Creative Labs' Voice Editor for the Sound Blaster.
  2149.  
  2150.        Digital sounds for GETS are stored in Creative Labs' Digital Sound
  2151.        Format.  By using a Sound Blaster with the Voice Editor you ensure
  2152.        compatibility with the GETS digital sound drivers.  Do not use any
  2153.        sync or repeat commands in your voice files!  Sampling rate should
  2154.        be set to 9708 Hz.
  2155.  
  2156.  
  2157.        For FM (AdLib) Music
  2158.        ~~~~~~~~~~~~~~~~~~~~
  2159.  
  2160.        *  A Sound Blaster Music Card (Or an AdLib or Sound Master II).
  2161.        *  AdLib's Visual Composer.
  2162.        *  AdLib's Instrument Maker.
  2163.        *  AdLib's Progammer's Guide.
  2164.  
  2165.        FM music is stored in AdLib's MDI file format.  ROL files are NOT
  2166.        compatible with GETS.  Use the ROL2MIDI utility included with the
  2167.        AdLib Programmer's Guide to convert ROL files to MDI.  MDI files
  2168.        must be less than 32k (32767 bytes or smaller) to fit into the
  2169.        limited FM sound buffer provided by GETS.
  2170.  
  2171.  
  2172.  
  2173. APPENDIX C - CONFIGURATION OPTIONS
  2174. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  2175.  
  2176.  
  2177.  
  2178. To further control the configuration of GETS on your system, you may use
  2179. any text editor (such as the DOS command EDLIN.COM) to update the GETS
  2180. configuration file GETS.CFG.  The options contained within the GETS.CFG
  2181. file are:
  2182.  
  2183.  
  2184.             ** <text>       A double astrick may be placed at the beginning
  2185.                             of any line in the GETS.CFG file to make it a
  2186.                             comment.  Comments are ignored by GETS when the
  2187.                             configuration file is read in.  Use them for
  2188.                             making notes within your configuration file.
  2189.  
  2190.             COM=[x]         [x] can be either 1 or 2.
  2191.                             COM determines which COM port to use
  2192.                             when GETS takes control of the modem.
  2193.                             Use the same COM port that you selected
  2194.                             inside your existing terminal software.
  2195.                             Default is 1.
  2196.  
  2197.             MODEMBUFFER=[x] [x] can be any number from 0 to 32767.
  2198.                             MODEMBUFFER reserves [x] bytes of RAM as a
  2199.                             "cache" for the modem.  If GETS seems to
  2200.                             be skipping commands, or it drops some
  2201.                             characters when in terminal mode, increase
  2202.                             the value of MODEMBUFFER.  Default is 4096.
  2203.  
  2204.             FILEBUFFER=[x]  [x] can be any number from 0 to 32767.
  2205.                             FILEBUFFER determines the size of the disk
  2206.                             I/O buffer to be used by GETS.  The larger
  2207.                             the buffer, the faster disk I/O will run.
  2208.                             If MODEMBUFFER cannot correct "skipping"
  2209.                             problems, try increasing FILEBUFFER.  Also
  2210.                             increase FILEBUFFER on slower drives, and
  2211.                             especially with floppy systems.
  2212.                             Default is 2048.
  2213.  
  2214.  
  2215. APPENDIX C - CONFIGURATION OPTIONS (cont.)
  2216. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  2217.  
  2218.  
  2219.  
  2220.             SOUND=<s>       <s> is any supported sound device code.
  2221.                             Valid codes for <s> are:
  2222.                                  ISP: Internal Speaker.
  2223.                                  ADL: AdLib Sound Card.
  2224.                                   SB: Sound Blaster.
  2225.                                  VM0: Voice Master (Internal, Port 0).
  2226.                                  VM1: Voice Master (Internal, Port 1).
  2227.                                  VM2: Voice Master (Internal, Port 2).
  2228.                                  VM3: Voice Master (Internal, Port 3).
  2229.                                   SM: Sound Master (Auto senses Jumpers).
  2230.                                  SM0: Sound Master II (Internal, Port 0).
  2231.                                  SM1: Sound Master II (Internal, Port 1).
  2232.                                  SM2: Sound Master II (Internal, Port 2).
  2233.                                  SM3: Sound Master II (Internal, Port 3).
  2234.                                 LPT1: Voice Master or Speech Thing on LPT1.
  2235.                                 LPT2: Voice Master or Speech Thing on LPT2.
  2236.                                 LPT3: Voice Master or Speech Thing on LPT3.
  2237.                                   NO: No sound.
  2238.                             This option is for digital sounds only.  Any
  2239.                             standard PC music will still be sent through
  2240.                             the internal speaker.  Only the NO option has
  2241.                             any effect on non-digital sounds.
  2242.                             Default is ISP.
  2243.  
  2244.             PREF=<s>        <s> can be either COLOR or RESOLUTION.  PREF
  2245.                             determines the way that GETS will handle non-
  2246.                             supported screen modes.  If your system does
  2247.                             not support the mode GETS is attempting to
  2248.                             use, GETS will pick a new mode based either
  2249.                             on the number of colors available, or by the
  2250.                             maximum resolution.  COLOR will make pictures
  2251.                             match more closely to the original color wise,
  2252.                             while RESOLUTION will try to keep the
  2253.                             resolution of the original picture.
  2254.                             Default is COLOR.
  2255.  
  2256.             DOS=<s>         <s> can be either NORMAL or NERVOUS.  When GETS
  2257.                             needs to use DOS to access another program, it
  2258.                             can be forced to ask for a confirmation first.
  2259.                             Due to the power of GETS, any DOS command may
  2260.                             be executed from within a GETScript program.
  2261.                             By setting DOS to NERVOUS, GETS will ask your
  2262.                             permission before sending the command to DOS.
  2263.                             This will allow you to watch for commands that
  2264.                             could be dangerous to your hard drive or to
  2265.                             your system.  NORMAL will execute any command
  2266.                             that is requested by GETS without prompting
  2267.                             you first.  Default is NERVOUS.
  2268.  
  2269.  
  2270. APPENDIX C - CONFIGURATION OPTIONS (cont.)
  2271. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  2272.  
  2273.  
  2274.  
  2275.             TEMP=<s>        <s> is any valid DOS pathname with a backslash
  2276.                             ("\") at the end.  GETS needs to create several
  2277.                             temporary files during its use to keep track of
  2278.                             its internal operations.  By setting a TEMP
  2279.                             pathname, you may tell GETS where to store the
  2280.                             files.  All temporary files are deleted when
  2281.                             GETS exits normally.  Default is current DOS
  2282.                             directory.
  2283.  
  2284.             CURSOR=<s>      <s> is either UNDERLINE or BLOCK.  GETS can
  2285.                             display either a blinking underline or a
  2286.                             blinking block for a cursor.  On laptops,
  2287.                             set CURSOR to BLOCK.  Default is UNDERLINE.
  2288.  
  2289.             SCROLLBACK=[x]  [x] is any number from 0 to 32767.  The value
  2290.                             of [x] determines how many lines of scrollback
  2291.                             will be remembered by GETS while online.
  2292.                             Default is 0.
  2293.  
  2294.             REGCODE=<s>     <s> is either your registration code or the
  2295.                             word NONE.  By entering your registration code
  2296.                             into the configuration file, you will remove
  2297.                             the annoying pop-up window requesting that
  2298.                             you register and you will be able to use
  2299.                             external command programs such as digitized
  2300.                             sound and AdLib music.  Default is NONE.
  2301.  
  2302.             NAME=<s>        <s> is the name of the user who this copy of
  2303.                             GETS is registered to.  Real names only!  Be
  2304.                             sure that the name used here is EXACTLY the
  2305.                             same as the name used when registering GETS.
  2306.  
  2307.  
  2308.  
  2309. APPENDIX D - GETS HISTORY
  2310. ~~~~~~~~~~~~~~~~~~~~~~~~~
  2311.  
  2312.  
  2313. BETA Releases - Testing purposes only.
  2314.                 Various versions.
  2315.  
  2316. Preview Disk - Initial release.
  2317.  
  2318. 1.0 - File I/O improved.
  2319.       FP, HP, and LN commands improved.
  2320.       PARSE routine greatly enhanced.
  2321.       File Exist routine improved.
  2322.       RL command replaced with improved LN.
  2323.  
  2324. 1.5 - GETSFly mode fixed.
  2325.       File Exist bug fixed.
  2326.       Missing line feeds bug fixed.
  2327.       Improved modem I/O.
  2328.       Cursor switch bug fixed.
  2329.       GETSPrep added to package.
  2330.  
  2331.  
  2332.  
  2333. APPENDIX E - REGISTRATION
  2334. ~~~~~~~~~~~~~~~~~~~~~~~~~
  2335.  
  2336.  
  2337.  
  2338. Thank-you for trying GETS!
  2339.  
  2340.  
  2341. Registration of GETS is only $25.00 (U.S. funds drawn on a U.S. bank only
  2342. please).  When registering GETS, be sure to include your real name spelled
  2343. EXACTLY as it was when it was entered into GETS during setup.  If the names
  2344. do not match, your registration code will not work.  Send check or money
  2345. orders only - DO NOT SEND CASH THROUGH THE MAIL.
  2346.  
  2347. By registering GETS, you will receive a copy of the latest version of GETS
  2348. on diskette, along with a registration code that will eliminate the annoying
  2349. registration window and unlock the external commands such as digital sound
  2350. and AdLib music.
  2351.  
  2352. GETS has taken countless hours of hard work to complete.  Please do not
  2353. abuse our efforts by not paying for it.
  2354.  
  2355. The file REGISTER.DOC contains a copy of our registration form.  Complete 
  2356. the form and return it to us along with $25.00 for registration of GETS.
  2357.  
  2358.  
  2359.  
  2360.  
  2361. Please pass unregistered, unmodified copies of GETS along to other users.
  2362.  
  2363.